package org.jeecg.modules.demo.pubuyorderToRk.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description: 入库单
 * @Author: jeecg-boot
 * @Date:   2022-05-20
 * @Version: V1.0
 */
@Data
@TableName("warehouse_order")
@ApiModel(value="warehouse_order对象", description="入库单")
public class RkOrder implements Serializable {
    private static final long serialVersionUID = 1L;

    /**主键ID*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键ID")
    private String id;
    /**入库单编号*/
    @Excel(name = "入库单编号", width = 15)
    @ApiModelProperty(value = "入库单编号")
    private String woNo;
    /**仓库编码(采购)*/
    @Excel(name = "仓库编码(采购)", width = 15)
    @ApiModelProperty(value = "仓库编码(采购)")
    private String puWhNum;
    /**入库单编号*/
    @Excel(name = "入库单编号", width = 15)
    @ApiModelProperty(value = "入库单编号")
    private String puWoNo;
    /**结算单编号*/
    @Excel(name = "结算单编号", width = 15)
    @ApiModelProperty(value = "结算单编号")
    private String pusNo;
    /**合同编号*/
    @Excel(name = "合同编号", width = 15)
    @ApiModelProperty(value = "合同编号")
    private String puConNo;
    /**采购订单号*/
    @Excel(name = "采购订单号", width = 15)
    @ApiModelProperty(value = "采购订单号")
    private String poOrder;
    /**仓库编码（产品）*/
    @Excel(name = "仓库编码（产品）", width = 15)
    @ApiModelProperty(value = "仓库编码（产品）")
    private String proWhNum;
    /**产品入库单编号*/
    @Excel(name = "产品入库单编号", width = 15)
    @ApiModelProperty(value = "产品入库单编号")
    private String proWoNo;
    /**仓库编码*/
    @Excel(name = "仓库编码", width = 15)
    @ApiModelProperty(value = "仓库编码")
    @Dict(dictTable = "YX_WAREHOUSE",dicCode = "WH_NUM",dicText = "WH_NAME")
    private String whNum;
    /**产品批号*/
    @Excel(name = "产品批号", width = 15)
    @ApiModelProperty(value = "产品批号")
    private String prdBn;
    /**质检单编号*/
    @Excel(name = "质检单编号", width = 15)
    @ApiModelProperty(value = "质检单编号")
    private String qoNum;
    /**入库量*/
    @Excel(name = "入库量", width = 15)
    @ApiModelProperty(value = "入库量")
    private BigDecimal qoQuantity;
    /**创建日期*/
    @Excel(name = "创建日期", width = 15, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "创建日期")
    private Date woDate;
    /**创建日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private Date createTime;
    //业务员
    @Excel(name = "审核人", width = 15)
    @Dict(dictTable = "SYS_USER",dicCode = "ID",dicText = "REALNAME")
    private String saleman;

    @Dict(dicCode= "checkState")
    private Integer shenhe;

    private Integer shanchu;

    private Integer feiyong;
    //含税单价
    private BigDecimal hsdj;
    /**订单总量*/
    @Excel(name = "数量", width = 15)
    @ApiModelProperty(value = "订单总量")
    private BigDecimal poTotail;


    //含税金额
    private BigDecimal hsje;
    //单价
    private BigDecimal wsdj;
    //金额
    private BigDecimal wsje;

    /**税额*/
    @Excel(name = "税额", width = 15)
    @ApiModelProperty(value = "税额")
    private BigDecimal psTax;
    /**税率*/
    @Excel(name = "税率", width = 15)
    @ApiModelProperty(value = "税率")
    @Dict(dicCode = "tax_rate")
    private Integer psTaxrat;
    //分摊后单价
    private BigDecimal ftwsdj;
    //分摊后金额
    private BigDecimal ftwsje;
    //分摊后含税单价
    private BigDecimal fthsdj;
    //分摊后含税金额
    private BigDecimal fthsje;
    //分摊后税额
    private BigDecimal ftse;

    private BigDecimal totalcost;

    private BigDecimal fttotalcost;

    private BigDecimal fyje;

    private BigDecimal standingstock;

    //计量单位
    private String measureunit;

    private BigDecimal supsttelemnt;

    private String realzb;

    private String chumdwmc;

    private String zhilzb;

    private Double kouton;
    //备注
    private String remark;

    /**业务员*/
    @Excel(name = "业务员", width = 15)
    @ApiModelProperty(value = "业务员")
    @Dict(dictTable = "SYS_USER",dicCode = "ID",dicText = "REALNAME")
    private java.lang.String poStaff;
    //项目
    @Dict(dictTable = "PJ_PROJECT",dicCode = "ID",dicText = "PJ_NAME")
    private String project;
    //部门
    @Dict(dictTable = "SYS_DEPART",dicCode = "ID",dicText = "DEPART_NAME")
    private String department;

    //存货名称
    private String cinvname;
    @Dict(dicCode = "rklb")
    private Integer rklb;

    //业务类型
    @Dict(dicCode = "ywlx")
    private String ywlx;
    /**调拨单号*/
    @Excel(name = "调拨单号", width = 15)
    @ApiModelProperty(value = "调拨单号")
    private java.lang.String dbNo;

    /**盘点单号*/
    @Excel(name = "盘点单号", width = 15)
    @ApiModelProperty(value = "盘点单号")
    private java.lang.String pdNo;


    private BigDecimal dbsjsl;

    private BigDecimal dbcl;

    private BigDecimal dbce;

    private Integer isSettlement;

    private String fj;
    /**
     * 租户ID
     */
    private Integer tenantId;
    private Integer zhzt;
    private  String tradecode;
    /**创建日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "创建日期")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Date shTime;

    private Integer isMerge;

    private BigDecimal zgsl;
    private BigDecimal zxcb;
    private BigDecimal zgdj;
    private BigDecimal fpsl;
    private BigDecimal fpje;
    private BigDecimal fpdj;

    private Integer documentType;
    /**
     * 创建人
     */
    private String createBy;


    private String sysOrgCode;

}
